package com.abcdefg.springaopdemo.aspect;


import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.*;
import org.springframework.stereotype.Component;

//@Slf4j
//@Aspect
//@Component
//public class AspectDemo6 {
//    @Pointcut("execution(* com.abcdefg.springaopdemo.controller.*.*(..))")
//    public void pt(){}
//
//    @Around("pt()")
//    //通知
//    public Object recordTime(ProceedingJoinPoint pjp)  {
//        log.info("AspectDemo6：目标方法执行前...");
//        Object result = null;
//        try {
//            pjp.proceed();
//        } catch (Throwable e) {
//            throw new RuntimeException(e);
//        }
//        log.info("AspectDemo6：目标方法执行后...");
//        return result;
//    }
//
//    @AfterReturning("pt()")
//    public void doAfterReturning(){
//        log.info("AspectDemo6：执行 AfterReturning 方法");
//    }
//    @AfterThrowing("pt()")
//    public void AfterThrowing(){
//        log.info("AspectDemo6：执行 AfterThrowing 方法");
//    }
//
//}
